package ReverseStream.InputStreamReader;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * @Author: ylc
 * @Description:转换流
 * @Date Created in 2022-04-27 14:12
 */
public class InputStreamReaderDemo {
    /*
        java.io.InputStreamReader extends Reader
        InputStreamReader:是字节流通向字符流的桥梁：它使用指定的 charset 读取字节并将其解码为字符。
        构造方法:
            InputStreamReader(InputStream in) 创建一个使用默认字符集的 InputStreamReader。
            InputStreamReader(InputStream in, String charsetName) 创建使用指定字符集的 InputStreamReader。
        注意事项:
            构造方法中指定的编码表名称要和文件的编码相同,否则会发生乱码
     */
    public static void main(String[] args) throws IOException {
        InputStreamReader isr = new InputStreamReader(new FileInputStream("Study05\\GBK格式的文本.txt"),"GBK");

        //2.使用InputStreamReader对象中的方法read读取文件
        int len = 0;
        while((len = isr.read())!=-1){
            System.out.print((char)len);
        }
        //3.释放资源
        isr.close();
    }
}
